package org.xx.armory.swing.builders;

import org.xx.armory.objectparser.LineInfo;

public class ButtonModel
        extends AbstractComponentModel
        implements ComponentModel {
    private final String actionName;
    private final boolean default_;

    /**
     * 构造解析对象。
     *
     * @param lineInfo
     *         源文件中的位置信息。
     */
    protected ButtonModel(
            LineInfo lineInfo,
            String name,
            boolean visible,
            String actionName,
            boolean default_
    ) {
        super(lineInfo, name, visible);
        this.actionName = actionName;
        this.default_ = default_;
    }

    /**
     * 获取按钮对应的Action名字。
     *
     * @return 按钮对应的Action名字。
     */
    public String getActionName() {
        return this.actionName;
    }

    /**
     * 判断此按钮是否是默认按钮。
     *
     * @return 此按钮是否是默认按钮。
     */
    public boolean isDefault() {
        return this.default_;
    }
}
